home *** CD-ROM | disk | FTP | other *** search
/ Amiga Games: Greatest Hits 1996 / Amiga Games: Greatest Hits 1996.iso / userbox / publicdomain / famelibrary / include / libraries / fame.i < prev   
Text File  |  1996-07-21  |  6KB  |  211 lines

  1.     IFND    LIBRARIES_FAME_I
  2. LIBRARIES_FAME_I    SET    1
  3.  
  4. **
  5. **    $VER: FAME.i 3.1
  6. **
  7. **    Standard asm definitions for FAME.library
  8. **
  9. **    (C) Copyright 1996 BLOODROCK/tRSi/F-Innovation
  10. **        All Rights Reserved
  11. **
  12.  
  13.     IFND EXEC_LIBRARIES_I
  14.     INCLUDE    "exec/libraries.i"
  15.     ENDC
  16.     IFND DOS_DOS_I
  17.     INCLUDE    "dos/dos.i"
  18.     ENDC
  19.     IFND LIBRARIES_FAME_LIB_I
  20.     INCLUDE "libraries/FAME_lib.i"
  21.     ENDC
  22.  
  23.  
  24. FAMENAME    Macro
  25.         dc.b    "FAME.library",0
  26.         EndM
  27.  
  28. FAMEVERSION    EQU     3
  29.  
  30.  
  31. ** FAME Object types **
  32.  
  33. FOBJ_FAMEDoorMsg    EQU    1
  34. FOBJ_FAMEMailHeader    EQU    2
  35. FOBJ_FAMEMailStat    EQU    3
  36. FOBJ_FAMEToolPortMsg    EQU    4
  37. FOBJ_FAMECoProcessPort    EQU    5
  38. FOBJ_FAMEExternEditor    EQU    6
  39. FOBJ_FAMEToolNotifyMsg    EQU    7
  40. FOBJ_FAMEExpansion    EQU    8
  41. FOBJ_FAMECnfExpansion    EQU    9
  42. FOBJ_FAMEUser        EQU    10
  43. FOBJ_FAMEUserKeys    EQU    11
  44. FOBJ_FAMEUserConf    EQU    12
  45. FOBJ_FAMECoProcess    EQU    13
  46. FOBJ_FAMEDestNodes    EQU    14
  47. FOBJ_FAMEInfoList    EQU    15
  48. FOBJ_FAMEOnlineMsg    EQU    16
  49. FOBJ_FAMEOLMString    EQU    17
  50.  
  51.  
  52. ** FAMEAllocObject() error codes **
  53. *  Use DOS/IoErr() to get the error code. May also be ERROR_NO_FREE_STORE.
  54.  
  55. FAOB_UnknownObject    EQU    -1    ; Object type out of range
  56.  
  57.  
  58. ** Possible return codes from FAMEAvailExe() **
  59.  
  60. FAE_RESIDENT        EQU     3
  61. FAE_RESIDENTSYS        EQU     2
  62. FAE_LOADFILE        EQU     1
  63. FAE_NOMATCH        EQU     0
  64. FAE_DATAFILE        EQU    -1
  65. FAE_NOEBIT        EQU    -2
  66. FAE_DIRECTORY        EQU    -3
  67. FAE_ERROR        EQU    -4
  68.  
  69.  
  70. ** Flags for FAMENumToStr() and FAMENum64ToStr() **
  71. ** Note: flags marked with "(-)" are not available for FAMENum64ToStr(). **
  72.  
  73.     BITDEF    FNS,HEX,0        ; (-) Output hex string
  74.     BITDEF    FNS,BIN,1        ; (-) Output binary string
  75.     BITDEF    FNS,WORD,2        ; (-) Output size WORD
  76.     BITDEF    FNS,BYTE,3        ; (-) Output size BYTE
  77.     BITDEF    FNS,LEADINGZEROES,4 ; (+) Output leading zeroes
  78.     BITDEF    FNS,LEADINGSIGN,5   ; (+) Add leading numeric system sign
  79.     BITDEF    FNS,RIGHTFORMAT,6   ; (+) Right formatted output
  80.     BITDEF    FNS,LEFTFORMAT,7    ; (+) Left formatted output
  81.     BITDEF    FNS,CENTERFORMAT,8  ; (+) Center formatted output
  82.     BITDEF    FNS,TENDLEFT,9        ; (+) Left tendence center formatting
  83.     BITDEF    FNS,LOWERCASE,10    ; (-) Hex characters lowercase
  84.     BITDEF    FNS,GROUPING,11        ; (+) Separate digit groups
  85.     BITDEF    FNS,NUMLOCALE,12    ; (+) Use numeric Locale group separator
  86.     BITDEF    FNS,MONLOCALE,13    ; (+) Use monetary Locale group separator
  87.     BITDEF    FNS,SIGNED,14        ; (+) Handle value as signed number
  88.     BITDEF    FNS,PLUSSIGN,15        ; (+) Use "+" char for signed pos. values
  89.     BITDEF    FNS,SWAPSIGNS,16    ; (+) Swap "-/+/ " and "#/$/%" positions
  90.  
  91.  
  92. ** FAME DevInfoList structure **
  93.  
  94.     STRUCTURE    FAMEDevInfoList,0
  95.     APTR    fdil_Next        ; next device
  96.     STRUCT    fdil_Name,32        ; device name including ":"
  97.     LONG    fdil_DiskType        ; InfoData->DiskType
  98.     LONG    fdil_DiskState        ; InfoData->DiskState
  99.     LONG    fdil_Size        ; total size in bytes
  100.     LONG    fdil_BytesFree        ; free bytes
  101.     LABEL    fdil_SIZEOF
  102.  
  103.  
  104.  
  105. ** FAMEExecuteDir() list (the result you get) **
  106.  
  107. ** This list only contains programs which have been successfully started.
  108.  
  109.     STRUCTURE    FAMEExecuteDirList,0
  110.     APTR    fxdl_Next         ; next started program
  111.     STRUCT    fxdl_FileName,256    ; name of the launched program
  112.     ULONG    fxdl_ReturnCode        ; the DOS ReturnCode of the program.
  113.     LABEL    fxdl_SIZEOF        ; If the SYS_Async Tag was specified,
  114.                     ; fxdl_ReturnCode is always NULL.
  115.  
  116.  
  117. ** FAMEFile structure returned by FAMELoadFile() **
  118.  
  119.     STRUCTURE    FAMEFile,0
  120.     APTR    ffil_File        ; the file image itself
  121.     BPTR    ffil_FH            ; the file's FileHandle
  122.                     ; (only valid if FLFF_KEEPFH was set)
  123.     STRUCT    ffil_FIB,fib_SIZEOF    ; the file's FileInfoBlock
  124.     LABEL    ffil_SIZEOF
  125.  
  126.  
  127. ** FAMEPoolFile structure returned by FAMELoadFilePooled() **
  128.  
  129.     STRUCTURE    FAMEPoolFile,0
  130.     APTR    fpof_Next        ; initialized to NULL, always ignored.
  131.                     ; free to use by your program !
  132.     APTR    fpof_Prev        ; initialized to NULL, always ignored.
  133.                     ; free to use by your program !
  134.     APTR    fpof_File        ; the file image itself
  135.     BPTR    fpof_FH            ; the file's FileHandle
  136.                     ; (only valid if FLFF_KEEPFH was set)
  137.     STRUCT    fpof_FIB,fib_SIZEOF    ; the file's FileInfoBlock
  138.     LABEL    fpof_SIZEOF
  139.  
  140.  
  141. ** FAMEDosMove() flags **
  142.  
  143.     BITDEF    FDM,NODELETE,0        ; copy instead moving
  144.     BITDEF    FDM,KEEPDATA,1        ; keep comment & protection bits
  145.                                         ; (except the archive bit)
  146.  
  147.  
  148. ** FAMELoadFile() and FAMELoadFilePooled() flags **
  149.  
  150.     BITDEF    FLF,KEEPFH,0        ; don't close the file
  151.  
  152.  
  153. ** FAMEPostFile() flags **
  154.  
  155.     BITDEF    FPF,NODELETE,0    ; don't delete source file anyway
  156.     BITDEF    FPF,REPLACE,1    ; delete/replace existing file(s)
  157.     BITDEF    FPF,CHECKONLY,2    ; Only test if the file already exists
  158.     BITDEF    FPF,KEEPDATA,3    ; Keep source file comment and protection
  159.                                 ; bits (except A,R,D)
  160.  
  161.  
  162. ** FAMEUlPathList structure **
  163.  
  164.     STRUCTURE    FAMEUlPathList,0
  165.     APTR    fupl_Next    ; Ptr. to next UploadPathList entry
  166.     APTR    fupl_Prev    ; Ptr. to previous UploadPathList entry
  167.     STRUCT    fupl_Path,102    ; full path name
  168.     ULONG    fupl_Internal    ; FAME.library internal; do not use!
  169.     LABEL    fupl_SIZEOF
  170.  
  171.  
  172. ** Library base **
  173.  
  174. ;  Fields declared as private ARE private. Do not use 'em. They contain
  175. ;  some internal data structures which don't contain anything you may
  176. ;  use to hack the BBS. It isn't useful for you anyway. Some BBS
  177. ;  functions give you informations from these data fields, if your
  178. ;  program may have use of it. So do not ever read these fields.
  179. ;  Also, *never* write anything to the library base.
  180.  
  181.  STRUCTURE FAMELibrary,LIB_SIZE
  182.  
  183.    * LIBRARY PRIVATE *
  184.  
  185.    UBYTE   FAME_Flags        ; see also:
  186.    UBYTE   FAME_pad        ; "sample.library.asm", documented in the
  187.    BPTR    FAME_SegList        ; Amiga ROM Kernel Reference Manual: Libraries
  188.  
  189.    * PUBLIC FIELDS *        ; may be READ from your program
  190.  
  191.    APTR    FAME_DOSBase        ; dos.library base V37
  192.    APTR    FAME_SysBase        ; exec base for faster access
  193.    APTR    FAME_LocaleBase    ; locale.library V38 base address
  194.  
  195.    * LIBRARY PRIVATE *
  196.  
  197.    LONG    FAME_Private2
  198.    STRUCT  FAME_Private3,50
  199.    WORD    FAME_Private4
  200.    STRUCT  FAME_Private5,40
  201.  
  202.    * PUBLIC FIELDS *
  203.  
  204.    APTR    FAME_TimerBase    ; timer.device library base
  205.    APTR    FAME_IconBase    ; icon.library V37 base address
  206.  
  207.    LABEL   FAME_SIZEOF
  208.  
  209.  
  210.  ENDC    ; LIBRARIES_FAME_I
  211.